1. Technical Field
The present invention relates to an apparatus and method for in-memory-based virtual desktop service.
2. Description of the Related Art
Recently, there has been a lot of research into and standardization of virtual desktop service, which is service for providing a hard disk for data storage, applications, or the like to an Internet space.
Korean Patent Application Publication Nos. 2010-0123847 and 2009-0111576 disclose virtual desktop service technology in detail. However, architecture for such virtual desktop service has not yet been standardized, and thus there is a limitation in that virtual desktop service cannot be efficiently provided to a user.
Virtual desktop service, which is service in which a hard disk for storing data, application programs, etc. are provided to an Internet space, enables a virtual machine running on a virtual desktop server to be used by connecting the virtual machine to a client system.
When a conventional virtual desktop is provided, there are various schemes, such as a scheme in which Microsoft (MS) provides terminal service called Remote Desktop Connection (RDC) using a Remote Desktop Protocol (RDP), a scheme in which Linux provides terminal service called Virtual Network Computing (VNC) using a Remote Framebuffer (RFB) protocol, and a scheme in which Teradici provides a terminal service solution using a protocol called PC-over-IP (PCoIP).
To perform virtual desktop service using such a conventional scheme, a virtual desktop function must be provided to each user. In order to provide this function, devices (e.g. a Central Processing Unit (CPU), memory, a Hard Disk Drive (HDD), a Universal Serial Bus (USB) device, etc.) corresponding to each user must be allocated to that user, and an OS image for each user must also be allocated.
As public tools for providing such a function, virt-tool, virt-manager, etc. are present. Virtual machines for users may be made and created using a program, such as Citrix XenDesktop, VMware Fusion or Workstation. However, those conventional schemes are disadvantageous in that the user must personally run exclusive software using the OS of a client system, and thus those schemes are not suitable for the provision of real-time virtual service.
Further, in conventional virtual desktop technology, MS provides terminal service called RDC using an RDP, and Linux provides terminal service called VNC using an RFB protocol. Furthermore, Teradici provides a terminal service solution using a protocol such as PCoIP.
In order to perform virtual desktop service using such a scheme, a virtual desktop function must be provided to each user. In order to provide this function, the devices (e.g. a CPU, memory, a HDD, a USB device, etc.) corresponding to each user must be allocated to that user, and an OS image for each user must also be allocated.
As public tools for providing such a function, virt-tool, virt-manager, etc. are available. A virtual desktop or a virtual machine for a user may be made and created using a program such as Citrix XenDesktop, VMware Fusion, or Workstation. However, since these public tools are provided using a manual scheme, they are not suitable for the provision of real-time virtual service. Further, methods for providing driving environments in different heterogeneous server environments are not appropriate.
Furthermore, an object in which an OS and an application program for a virtual desktop are installed in a virtual disk is referred to as a ‘virtual desktop image’. In order for the virtual desktop to be booted and operated, the virtual desktop image is always accessed.
In a single virtual desktop server, several tens of virtual desktops are operated. When all virtual desktops simultaneously access a virtual desktop image as in the case of virtual desktop booting, loads are concentrated on a virtual disk in which the virtual desktop image is stored, and thus a problem arises in that the performance of the entire system is deteriorated. In particular, since the speed of the virtual disk is much lower than that of other resources (CPU or memory) in the virtual desktop server, the deterioration of performance is more serious.